12章 イベントストーミング
イベントストリーミングとは、業務プロセスのモデルを迅速に作ることを目的に、関係者が集まって、ブレインストーミングスタイルで進める手法
イベントストリーミングのプロセス
Step1 発散的に探索する
まず探索する業務領域に関する業務イベントのブレインストーミングから始める
業務イベントは業務活動で起きた出来事で、過去形で表現する
業務イベントを洗い出し、付箋を使ってボードにまとめていく(オレンジ色の付箋がよいらしい)
Step2 時系列に並べる
Step1で洗い出した業務イベントを、業務で発生する順番に整理する
その際に「正常系のシナリオ」から始めること
その後、代替シナリオとしてエラーが発生したケースなどを整理する
条件分岐はボードに付箋に対して矢印を記述して表現する
Step3 問題点を洗い出す
プロセス全体の中で注意が必要な点を特定する
ボトルネックなっている箇所
自動化できていない作業
文章化されていない、業務知識が不足している箇所
問題点は付箋でボードに整理する(ダイヤモンド型のピンク色の付箋がよいらしい)
Step4 転換イベントを見つける
文脈やフェーズの変化を示す重症な業務イベントを探す
このイベントを転換イベントと呼び、時系列に並べた業務イベントの中で転換イベントに当たる付箋の上下に垂直線を引き転換イベント間をわかりやすくする
転換イベントは区切られた文脈を発見する手がかりになる
Step5 コマンドを見つける
コマンドはシステムの操作として、イベントあるいはイベントのフローを引き起こすものの説明として付箋に記述する(水色の付箋がよいらしい)
業務イベントとは異なり、何かを指示する形式で表現する
キャンペーンを公開する
処理を取り消す
コマンドはコマンドが生成するであろうイベントの前に貼る
特定の役割をもつアクターによって実行されるコマンドは、そのアクター情報を付箋に記載する(黄色の付箋がよいらしい)
顧客、編集者、管理者など
Step6 ポリシーを定義する
コマンドを実行すると想定される自動化ポリシーを探し、付箋を使って洗い出す(紫色の付箋がよいらしい)
コマンドの殆どはアクターに紐づけられていないため、ポリシーに関連づくことが多い
自動化ポリシーとは、あるイベントがコマンドの実行を引き起こすシナリオ
コマンドの実行条件が存在するなら、その判定条件もポリシーに記述する
Step7 読み取りモデルを見つける
読み取りモデルは、アクターがコマンドを実行するかどうか判断するために使う、対象領域の状態を表現するデータのビュー
画面、レポート、通知など
コマンドはアクターが読み取りモデルを確認した後に実行されるため、読み取りモデルの付箋はコマンドの前に配置する(緑色の付箋がよいらしい)
Step8 外部システムを追加する
外部システムとは、探索している業務領域の外側に存在するシステムの表現でこれも付箋で管理する(ピンク色の付箋がよいらしい)
コマンドを実行したり、イベントに関する通知を受けたりする可能性があるものが該当する
Step9 集約を見つける
すべてのイベントとコマンドを洗い出したら、関連する概念を集約として整理する
集約はコマンドを受け取りイベントを生成する
集約は大きな黄色の付箋で表し、左側にコマンド、右側にイベントを配置する
Step10 区切られた文脈に整理する
最後のステップとして、機能的に密接に関係している、または自動化ポリシーを通じて結合されている集約を探す。
この集約の集まりが、区切られた文脈の境界になる